Academic Year/course:
2023/24
581 - Bachelor's Degree in Telecommunications Technology and Services Engineering
30391 - Software Analysis and Design
Syllabus Information
Academic year:
2023/24
Subject:
30391 - Software Analysis and Design
Faculty / School:
110 - Escuela de Ingeniería y Arquitectura
Degree:
581 - Bachelor's Degree in Telecommunications Technology and Services Engineering
ECTS:
6.0
Year:
4
Semester:
First semester
Subject type:
Optional
Module:
---
1. General information
After having taken the subjects Fundamentals of Computer Science and Network and Services Programming, the student is now introduced to the object-oriented paradigm. In this subject you will learn how to build larger software and from a global perspective, not only focused on implementation aspects. You will learn how to determine the software requirements, analyze them, perform a design, and propose a set of tests. The subject has a markedly applied character.
These approaches and objectives are aligned with Goal 9: Industry, innovation and infrastructure, of the United Nations Agenda 2030 (https://www.un.org/sustainabledevelopment/es/), in such a way that the acquisition of the subject's learning results provides training and competence to contribute to some extent to their achievement.
2. Learning results
-
Understand the software lifecycle, know the existence of different lifecycle models and know under which circumstances to apply each of them.
-
Can distinguish the concepts of structured programming from those of object-oriented programming, and more generally understand the object-oriented paradigm from analysis to implementation.
-
Be able to perform software requirements capture: functional and non-functional.
-
Be able to perform the analysis of a software system distinguishing between the static and the dynamic model.
-
Be able to perform object-oriented software design.
-
Know and know how to apply different design patterns and distinguish different architectural patterns.
-
Know and know how to use the unified modeling language (UML) in both software analysis and design.
-
Know the basic fundamentals of software testing.
-
Software program with relational database access libraries: ODBC.
-
Learn about the Remote Object Invocation paradigm and the underlying architectural concepts
-
Conceive the software project in its entirety, from requirements capture to implementation, and be able to create the necessary documentation for each stage of the life cycle.
3. Syllabus
-
Introduction to software engineering: software life cycle
-
Software requirements
-
Object-oriented analysis: static modeling
-
Object-oriented analysis: dynamic modeling
-
Object-oriented design: Design patterns
-
Software product testing
-
Distributed objects
4. Academic activities
Lectures: 25 hours
Theoretical sessions in which the contents of the subject will be explained
Problems and cases: 15 hours
Solving real software problems corresponding to theoretical development
Laboratory practices: 20 hours
Development of real software systems
Personal study: 84 hours
Assessment tests. 6 hours
5. Assessment system
The subject will be evaluated in the continuous assessment mode by means of the following activities:
Test 1. Exercises on each of the topics developed in the theory classes and problems. Individually or in group will work and then deliver, on the date agreed with the teacher, the exercises proposed for the subject (45% of the grade, minimum 5 out of 10).
Test 2. Results of laboratory practices. Each of the 6 practice sessions will be evaluated. Each group will be evaluated either during the laboratory session or by submitting the work indicated (35% of the grade, minimum 5 out of 10).
Test 3. Final written test. It will consist of solving problems and theoretical questions on the subject developed at throughout the term (20% of the grade, minimum 5 out of 10).
If the student has not passed any of these activities during the semester, they will have the opportunity to pass the subject by means of a global test in the two official exam calls.